package com.ruoyi.project.module.remark.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.web.domain.BaseEntity;
import java.util.Date;

/**
 * 补全与说明表 complete_remark
 * 
 * @author ruoyi
 * @date 2018-12-14
 */
public class Remark extends BaseEntity
{
	private static final long serialVersionUID = 1L;
	
	/** 主键 */
	private Long completeRemarkId;
	/** 字典 */
	private String dictionary;
	/** 所属组 */
	private String groupName;
	/** 描述 */
	private String description;
	/** 使用计数 */
	private Integer applyCount;
	/** 备注 */
	private String remark;
	/** 创建者 */
	private String createBy;
	/** 创建时间 */
	private Date createTime;
	/** 更新者 */
	private String updateBy;
	/** 更新时间 */
	private Date updateTime;
	/** 自定义json存储 */
	private String json;

	public void setCompleteRemarkId(Long completeRemarkId) 
	{
		this.completeRemarkId = completeRemarkId;
	}

	public Long getCompleteRemarkId() 
	{
		return completeRemarkId;
	}
	public void setDictionary(String dictionary) 
	{
		this.dictionary = dictionary;
	}

	public String getDictionary() 
	{
		return dictionary;
	}
	public void setGroupName(String groupName) 
	{
		this.groupName = groupName;
	}

	public String getGroupName() 
	{
		return groupName;
	}
	public void setDescription(String description) 
	{
		this.description = description;
	}

	public String getDescription() 
	{
		return description;
	}
	public void setApplyCount(Integer applyCount) 
	{
		this.applyCount = applyCount;
	}

	public Integer getApplyCount() 
	{
		return applyCount;
	}
	public void setRemark(String remark) 
	{
		this.remark = remark;
	}

	public String getRemark() 
	{
		return remark;
	}
	public void setCreateBy(String createBy) 
	{
		this.createBy = createBy;
	}

	public String getCreateBy() 
	{
		return createBy;
	}
	public void setCreateTime(Date createTime) 
	{
		this.createTime = createTime;
	}

	public Date getCreateTime() 
	{
		return createTime;
	}
	public void setUpdateBy(String updateBy) 
	{
		this.updateBy = updateBy;
	}

	public String getUpdateBy() 
	{
		return updateBy;
	}
	public void setUpdateTime(Date updateTime) 
	{
		this.updateTime = updateTime;
	}

	public Date getUpdateTime() 
	{
		return updateTime;
	}
	public void setJson(String json)
	{
		this.json = json;
	}

	public String getJson() 
	{
		return json;
	}

    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("completeRemarkId", getCompleteRemarkId())
            .append("dictionary", getDictionary())
            .append("groupName", getGroupName())
            .append("description", getDescription())
            .append("applyCount", getApplyCount())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("json", getJson())
            .toString();
    }


	@Override
	public int hashCode() {
		if(getCompleteRemarkId()!=null){
		    return getCompleteRemarkId().hashCode();
		}
		return super.hashCode();
	}

	@Override
	public boolean equals(Object obj) {
		if(getCompleteRemarkId()!=null&&obj instanceof Remark){
		    return getCompleteRemarkId().equals(((Remark) obj).getCompleteRemarkId());
        }
		return super.equals(obj);
	}
}
